#ifndef BGV_SECRETKEY_H_
#define BGV_SECRETKEY_H_

#include "common.h"
#include "context.h"

/* *
 * @brief ：SecretKey类，用于存储并管理加密方案中的私钥
 *
 * @details
 * ：该类负责存储私钥相关的系数（sx），并提供通过上下文初始化私钥的方法。
 * 禁用复制和移动构造函数及赋值操作符，确保私钥对象不可复制或移动。
 */
class SecretKey {
public:
    uint64_t *sx;
    SecretKey(Context &context);
    SecretKey(const SecretKey &sk) = delete;
    SecretKey &operator = (const SecretKey &sk) = delete;
    SecretKey(SecretKey &&sk) = delete;
    SecretKey &operator = (SecretKey &&sk) = delete;
};
#endif
